class Sky {
  constructor(config) {
    // 静态属性
    // console.log(config);
    this.bg = config.bg;
    this.width = config.width;
    this.height = config.height;

    this.x1 = 0
    this.y1 = 0;
    this.x2 = 0;
    this.y2 = -this.height
    this.speed = config.speed
    // 最后更新时间
    this.lastTime = new Date().getTime()
  }
  // 动态方法

  // 判断这个时间段天空是否需要移动
  // 拿到当前的时间节点 再 拿到一个历史时间
  // 当前时间 - 速度时间 如果大于 历史事件 那么需要移动
  // 否则不需要移动
  judge() {
    let currentTime = new Date().getTime();
    if (currentTime - this.lastTime > this.speed) {
      this.y1++;
      this.y2++;
      this.lastTime = currentTime
    }
    if (this.y2 === 0) {
      this.y1 = 0;
      this.y2 = -this.height;
    }
  }
  // 绘图方法
  paint(context) {
    context.drawImage(this.bg, this.x1, this.y1, this.width, this.height);
    context.drawImage(this.bg, this.x2, this.y2, this.width, this.height);
    // 当第二张背景滚到坐标0；让两张图片回到初始状态以实现无缝连接
    // if (this.y2 === 0) {
    //   this.y1 = 0;
    //   this.y2 = -this.height;
    // }
  }
}